package com.wande.dataplatform.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.wande.common.mybatis.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 数据填报数据实体
 *
 * @author wande
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("dp_fill_data")
public class FillData extends BaseEntity {

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 租户ID
     */
    private Long tenantId;

    /**
     * 模板ID
     */
    private Long templateId;

    /**
     * 填报数据JSON
     */
    private String dataContent;

    /**
     * 提交状态: DRAFT-草稿, SUBMITTED-已提交, APPROVED-已审批, REJECTED-已驳回
     */
    private String submitStatus;

    /**
     * 审批状态
     */
    private String approvalStatus;

    /**
     * 审批历史JSON
     */
    private String approvalHistory;

    /**
     * 提交人
     */
    private Long submitBy;

    /**
     * 提交时间
     */
    private LocalDateTime submitTime;

    /**
     * 审批人
     */
    private Long approveBy;

    /**
     * 审批时间
     */
    private LocalDateTime approveTime;

    /**
     * 驳回原因
     */
    private String rejectReason;

    /**
     * 所属项目ID
     */
    private Long projectId;
}
